home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / misc / libx11inc.lha / X11 / Xm / ProtocolsP.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-13  |  2.0 KB  |  84 lines

  1. /* 
  2.  * (c) Copyright 1989, 1990, 1991, 1992 OPEN SOFTWARE FOUNDATION, INC.
  3.  * ALL RIGHTS RESERVED
  4. */ 
  5. /*   $RCSfile: ProtocolsP.h,v $ $Revision: 1.11 $ $Date: 92/05/14 12:54:36 $ */
  6. /*
  7. *  (c) Copyright 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  8. #ifndef _XmProtocolsP_h
  9. #define _XmProtocolsP_h
  10.  
  11. #include <Xm/Protocols.h>
  12. #include <Xm/ExtObjectP.h>
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16.  
  17. typedef struct _XmProtocolClassPart{
  18.     XtPointer    extension;
  19. }XmProtocolClassPart;
  20.  
  21. typedef struct _XmProtocolClassRec{
  22.     ObjectClassPart    object_class;
  23.     XmExtClassPart    ext_class;
  24.     XmProtocolClassPart    protocol_class;
  25. }XmProtocolClassRec, *XmProtocolObjectClass;
  26.  
  27. typedef struct _XmProtocolPart{
  28.     XtCallbackRec    pre_hook, post_hook;
  29.     XtCallbackList    callbacks;
  30.     Atom        atom;
  31.     Boolean        active;
  32. } XmProtocolPart, *XmProtocolPartPtr;
  33.  
  34. typedef struct _XmProtocolRec{
  35.     ObjectPart            object;
  36.     XmExtPart            ext;
  37.     XmProtocolPart        protocol;
  38. }XmProtocolRec, *XmProtocol, **XmProtocolList;
  39.  
  40. #ifndef XmIsProtocol
  41. #define XmIsProtocol(w) XtIsSubclass(w, xmProtocolObjectClass)
  42. #endif /* XmIsProtocol */
  43.  
  44. /* Class record constants */
  45.  
  46. externalref XmProtocolClassRec     xmProtocolClassRec;
  47. externalref WidgetClass xmProtocolObjectClass;
  48.  
  49. typedef struct _XmProtocolMgrRec{
  50.     Atom        property;
  51.     XmProtocolList     protocols;
  52.     Cardinal        num_protocols;
  53.     Cardinal        max_protocols;
  54. }XmProtocolMgrRec, *XmProtocolMgr, **XmProtocolMgrList;
  55.  
  56.  
  57. typedef struct _XmAllProtocolsMgrRec{
  58.   XmProtocolMgrList    protocol_mgrs;
  59.   Cardinal        num_protocol_mgrs;
  60.   Cardinal        max_protocol_mgrs;
  61.   Widget        shell;
  62. }XmAllProtocolsMgrRec, *XmAllProtocolsMgr;
  63.     
  64.  
  65. /********    Private Function Declarations    ********/
  66. #ifdef _NO_PROTO
  67.  
  68. extern void _XmInstallProtocols() ;
  69.  
  70. #else
  71.  
  72. extern void _XmInstallProtocols( 
  73.                         Widget w) ;
  74.  
  75. #endif /* _NO_PROTO */
  76. /********    End Private Function Declarations    ********/
  77.  
  78.  
  79. #ifdef __cplusplus
  80. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  81. #endif
  82.  
  83. #endif /* _XmProtocolsP_h */
  84.